#include <bits/stdc++.h>
using namespace std;
using i64 = long long;

void solve(){
    int n;
    cin>>n;
    int maxn=0;
    vector<int> a(n,0);
    vector<bool> st(n,false);
    for(int i=0;i<n;i++){
        cin>>a[i];
        maxn |= a[i];
    }

    vector<int> ans;
    int pmax=0;
    while(pmax!=maxn){
        int idx=0;
        int tmp=pmax;
        for(int i=0;i<n;i++){
            if((pmax|a[i])>tmp){
                tmp=pmax|a[i];
                idx=i;
            }
        }
        pmax=tmp;
        st[idx]=true;
        ans.push_back(a[idx]);
    }

    vector<int> res;
    for(int i=0;i<n;i++)
        if(!st[i]) res.push_back(a[i]);
    sort(res.begin(), res.end());

    for(int i=0;i<res.size();i++)
        ans.push_back(res[i]);

    for(auto x:ans) cout<<x<<" ";
    cout<<"\n";

}

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int T;
    cin>>T;
    while (T--)
        solve();
    return 0;
}
